﻿#region

using System.Collections.Generic;
using System.ServiceModel;
using BTL.OnlineTestingSocial.Domain.TestingEngine;

#endregion

namespace BTL.OnlineTestingSocial.Services.TestingEngine.Contract
{
    [ServiceContract(Namespace = "http://www.shareitvn.com/TestingEngineService")]
    public interface ITestingEngineService
    {
        [OperationContract(Name = "GetCategories")]
        IEnumerable<Category> GetCategories();

        [OperationContract(Name = "GetPrivateQuestionGroups")]
        IEnumerable<QuestionGroupItem> GetPrivateQuestionGroups(int userId, int pageSize, int pageNum);

        [OperationContract(Name = "GetPublicQuestionGroups")]
        IEnumerable<QuestionGroupItem> GetPublicQuestionGroups(int userId, int pageSize, int pageNum);

        [OperationContract(Name = "DeleteQuestionGroup")]
        bool DeleteQuestionGroup(string ids);

        [OperationContract(Name = "InsertComment")]
        bool InsertComment(string content, int? questionDetailId, int? questionGroupId, string createBy);

        [OperationContract(Name = "InsertLike")]
        bool InsertLike(bool isDislike, int? questionDetailId, int? questionGroupId, string createBy);

        [OperationContract(Name = "GetQuestionGroupDetail")]
        QuestionGroupItem GetQuestionGroupDetail(int questionGroupId);
    }
}